package com.allprs.common.core.domain.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.allprs.common.core.domain.BaseEntity;

import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 数据服务表(ResourcesService)实体类
 *
 * @author Rengd
 * @since 2021-09-23 17:23:39
 */
public class ResourcesService extends BaseEntity implements Serializable  {

    private static final long serialVersionUID = 836223281712935621L;

    /**
     * 服务ID，主键自增
     */
    private Integer serviceId;
    /**
     * 服务名称
     */
    private String serviceName;
    /**
     * 服务别名
     */
    private String serviceNick;
    /**
     * 服务来源 1-自有服务，2-外部服务
     */
    private String serviceSource;
    /**
     * 服务状态 1-启用，2-禁用
     */
    private String serviceState;
    /**
     * 服务类型 1000008-地形CTB，2000004-wfs，12000008-影像TSM，13000006-点云数据，14000003-BIM数据，16000002-倾斜模型，17000002-矢量瓦片，50000012-人工模型
     */
    private String serviceType;
    /**
     * 服务地址url路径
     */
    private String serviceUrl;
    /**
     * 服务说明
     */
    private String serviceRemark;
    /**
     * 发布人
     */
    private String createBy;
    /**
     *
     */
    private String createName;
    /**
     * 发布时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 修改人
     */
    private String updateBy;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 源数据 种类暂定
     */
    private String serviceTo;
    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;
    /**
     * 资源id,发布的资源id
     */
    private String resourceId;
    /**
     * 服务导览图地址
     */
    private String servicePicture;
    /**
     * 数据权限 1-仅自己，2-公开，3-部门内，4-平台内部
     */
    private String serviceRole;
    /**
     * 不同的数据权限对应不同的类型  仅自己（本人ID），公开（open），部门内（部门ID），平台内部（平台ID）
     */
    private String roleType;

    private Boolean isChecked;//是否展示

    private String keyWord;//查询关键字

    private String businessTag; //标签

    private String queryType; //查询类型 [1-受限|2公开]

    private List<String> serviceRoleList;//数据权限集合

    private List<String> roleTypeList;//权限id集合

    private String toFileName;//元数据文件名称

    private String bBoxData;//bbox数据

    private String boundingSphere;//包围盒

    private Double area;//面积

    private VolumeServiceRela volumeServiceRela;//服务属性

    private Integer outSideServiceId;//服务外部id【对用得数据中台id】

    private String baseUrl;//服务基础地址

    private String addrUrl;//一标三体请求地址

    private String purpose; //用途 1-三维场景 2-专题图 3-综合查询

    private List<String> typeList;  //资源类型集合

    private String resourceForm;//资源格式

    private String centerPoint;//中心点

    private String offsetValue;//偏移值

    private String serviceSuperType;//上级分类

    private String isRelation;//是否关联查询 1-是，2-否

    private String metaData;//元数据

    public String getCreateName() {
        return createName;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }

    public Integer getServiceId() {
        return serviceId;
    }

    public void setServiceId(Integer serviceId) {
        this.serviceId = serviceId;
    }

    @Size(min = 0, max = 100, message = "服务名称长度不能超过100个字符")
    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    @Size(min = 0, max = 100, message = "服务别名长度不能超过100个字符")
    public String getServiceNick() {
        return serviceNick;
    }

    public void setServiceNick(String serviceNick) {
        this.serviceNick = serviceNick;
    }

    public String getServiceSource() {
        return serviceSource;
    }

    public void setServiceSource(String serviceSource) {
        this.serviceSource = serviceSource;
    }

    public String getServiceState() {
        return serviceState;
    }

    public void setServiceState(String serviceState) {
        this.serviceState = serviceState;
    }

    public String getServiceType() {
        return serviceType;
    }

    public void setServiceType(String serviceType) {
        this.serviceType = serviceType;
    }

    @Size(min = 0, max = 500, message = "服务URL长度不能超过500个字符")
    public String getServiceUrl() {
        return serviceUrl;
    }

    public void setServiceUrl(String serviceUrl) {
        this.serviceUrl = serviceUrl;
    }

    @Size(min = 0, max = 500, message = "服务说明长度不能超过500个字符")
    public String getServiceRemark() {
        return serviceRemark;
    }

    public void setServiceRemark(String serviceRemark) {
        this.serviceRemark = serviceRemark;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getServiceTo() {
        return serviceTo;
    }

    public void setServiceTo(String serviceTo) {
        this.serviceTo = serviceTo;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getResourceId() {
        return resourceId;
    }

    public void setResourceId(String resourceId) {
        this.resourceId = resourceId;
    }

    public String getServicePicture() {
        return servicePicture;
    }

    public void setServicePicture(String servicePicture) {
        this.servicePicture = servicePicture;
    }

    public String getServiceRole() {
        return serviceRole;
    }

    public void setServiceRole(String serviceRole) {
        this.serviceRole = serviceRole;
    }

    public String getRoleType() {
        return roleType;
    }

    public void setRoleType(String roleType) {
        this.roleType = roleType;
    }

    public Boolean getChecked() {
        return isChecked;
    }

    public void setChecked(Boolean checked) {
        isChecked = checked;
    }

    public String getKeyWord() {
        return keyWord;
    }

    public void setKeyWord(String keyWord) {
        this.keyWord = keyWord;
    }

    public String getBusinessTag() {
        return businessTag;
    }

    public void setBusinessTag(String businessTag) {
        this.businessTag = businessTag;
    }

    public String getQueryType() {
        return queryType;
    }

    public void setQueryType(String queryType) {
        this.queryType = queryType;
    }

    public List<String> getRoleTypeList() {
        return roleTypeList;
    }

    public void setRoleTypeList(List<String> roleTypeList) {
        this.roleTypeList = roleTypeList;
    }

    public List<String> getServiceRoleList() {
        return serviceRoleList;
    }

    public void setServiceRoleList(List<String> serviceRoleList) {
        this.serviceRoleList = serviceRoleList;
    }

    public String getToFileName() {
        return toFileName;
    }

    public void setToFileName(String toFileName) {
        this.toFileName = toFileName;
    }

    public String getbBoxData() {
        return bBoxData;
    }

    public void setbBoxData(String bBoxData) {
        this.bBoxData = bBoxData;
    }

    public String getBoundingSphere() {
        return boundingSphere;
    }

    public void setBoundingSphere(String boundingSphere) {
        this.boundingSphere = boundingSphere;
    }

    public Double getArea() {
        return area;
    }

    public void setArea(Double area) {
        this.area = area;
    }

    public VolumeServiceRela getVolumeServiceRela() {
        return volumeServiceRela;
    }

    public void setVolumeServiceRela(VolumeServiceRela volumeServiceRela) {
        this.volumeServiceRela = volumeServiceRela;
    }

    public Integer getOutSideServiceId() {
        return outSideServiceId;
    }

    public void setOutSideServiceId(Integer outSideServiceId) {
        this.outSideServiceId = outSideServiceId;
    }

    public String getBaseUrl() {
        return baseUrl;
    }

    public void setBaseUrl(String baseUrl) {
        this.baseUrl = baseUrl;
    }

    public String getAddrUrl() {
        return addrUrl;
    }

    public void setAddrUrl(String addrUrl) {
        this.addrUrl = addrUrl;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getPurpose() {
        return purpose;
    }

    public void setPurpose(String purpose) {
        this.purpose = purpose;
    }

    public void setTypeList(List<String> typeList) {
        this.typeList = typeList;
    }

    public List<String> getTypeList() {
        return typeList;
    }

    public String getResourceForm() {
        return resourceForm;
    }

    public void setResourceForm(String resourceForm) {
        this.resourceForm = resourceForm;
    }

    public String getCenterPoint() {
        return centerPoint;
    }

    public void setCenterPoint(String centerPoint) {
        this.centerPoint = centerPoint;
    }

    public String getOffsetValue() {
        return offsetValue;
    }

    public void setOffsetValue(String offsetValue) {
        this.offsetValue = offsetValue;
    }

    public String getServiceSuperType() {
        return serviceSuperType;
    }

    public void setServiceSuperType(String serviceSuperType) {
        this.serviceSuperType = serviceSuperType;
    }

    public String getIsRelation() {
        return isRelation;
    }

    public void setIsRelation(String isRelation) {
        this.isRelation = isRelation;
    }

    public String getMetaData() {
        return metaData;
    }

    public void setMetaData(String metaData) {
        this.metaData = metaData;
    }
}
